在上一篇文章中,我們已經完成了「PChome 24h購物」在 App Store 的評論爬取。
本篇則將聚焦在 Google Play 的評論資料爬取。
相較於 App Store 的 RSS Feed 方式,Google Play 的評論取得方式更為簡單,因為我們可以直接透過 google-play-scraper 套件來抓取評論,並且能夠設定語言、地區,甚至一次抓取所有評論,非常方便。
首先,匯入所需套件,並設定目標 App 的 app_id
。
import pandas as pd
import numpy as np
import requests
import json
from google_play_scraper import app, reviews_all
import re
import emoji
import os
from datetime import datetime
import pytz
# 設定應用程式的 app_id(以 PChome 24h購物為例)
app_id = 'com.PChome.Shopping'
接著,使用 reviews_all()
抓取評論。這裡我們示範同時抓取繁體中文與英文評論:
# 抓取繁體中文評論
reviews_zh = reviews_all(
app_id,
sleep_milliseconds=0, # 避免被封鎖,可調整延遲時間
lang='zh_TW',
country='tw'
)
# 抓取英文評論
reviews_en = reviews_all(
app_id,
sleep_milliseconds=0,
lang='en',
country='tw'
)
# 合併中文與英文評論
all_reviews = reviews_zh + reviews_en
all_reviews[:2] # 檢視前兩筆資料
執行上述程式後,我們會得到一個 list,裡面包含許多評論,每一筆評論都是一個 dictionary,長相大概如下:
可以看到,Google Play 提供的欄位比 App Store 多一些,例如:
score
:星等(1–5)
thumbsUpCount
:該評論獲得的「有幫助」次數
reviewCreatedVersion
:當下使用的 App 版本
replyContent
:若開發者有回覆評論,會出現在這裡
因為 all_reviews 已經是 list of dictionaries,我們只需要用 pandas.DataFrame() 就能快速轉換成表格格式。
df_google_play = pd.DataFrame(all_reviews)
df_google_play
透過 google-play-scraper
,我們可以輕鬆取得 Google Play 的完整評論資料,並轉換為 DataFrame 格式。當我們收集好這些資料,是還不行直接使用,可以自行觀察資料有些格式上仍需進行處理,下一篇文章將解說如何統一格式。